home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 050 / tpcmag.arc / CIRCLE.PRC < prev    next >
Text File  |  1986-05-14  |  971b  |  25 lines

  1. (*  procedure to produce a circle on the screen from PC World May 1986
  2.     page 350 by Dan Leska of Nichols, NY.  *)
  3.  
  4. Procedure circle(xorigin,yorigin,radius,color : integer);
  5.  
  6. var
  7.   incrmnt, xequat : real;
  8.  
  9. begin
  10.   incrmnt := radius + 0.25;
  11.   repeat
  12.     incrmnt := incrmnt - 0.25;
  13.     xequat := sqrt(sqr(radius) - sqr(incrmnt));
  14.     plot (round(xorigin + xequat), round(yorigin + incrmnt), color);
  15.     plot (round(xorigin - xequat), round(yorigin - incrmnt), color);
  16.     plot (round(xorigin + xequat), round(yorigin - incrmnt), color);
  17.     plot (round(xorigin - xequat), round(yorigin + incrmnt), color);
  18.   until (incrmnt = 0);;
  19.   draw (xorigin - round(radius * 0.12), yorigin + radius,
  20.         xorigin + round(radius * 0.15), yorigin + radius, color);
  21.   draw (xorigin - round(radius * 0.12), yorigin - radius,
  22.         xorigin + round(radius * 0.15), yorigin - radius, color);
  23.  
  24. end; { procedure circle(xorigin,yorigin,radius,color : integer); }
  25.